const AdminController = require('../controller/AdminController')
const CategoryController = require('../controller/CategoryController')
const ArticleController = require('../controller/ArticleController')
const TagController = require('../controller/TagController')
const express = require('express')
const multer = require('multer')

// 定义上传的目录
let upload = multer({ dest: 'uploads/' })

// 得到路由器对象
const router = express.Router()

// 获取分类下面的文章总数
router.get('/getCateArticleCount', ArticleController.getCateArticleCount)

// 添加分类接口
router.post('/addArticle', ArticleController.addArticle)

// 获取tag标签列表
router.get('/tagList', TagController.tagList)

// 获取文章列表
router.get('/article', ArticleController.articleList)

// 获取后台管理员列表
router.get('/list', AdminController.adminList)

// 后台获取用户登录信息
router.get('/adminInfo', AdminController.adminInfo)

// 更新用户头像
router.put('/updAvatar', AdminController.updAvatar)

// 实现文件上传
router.post('/upload', upload.single('avatar'), AdminController.upload)

// 获取单条分类接口
router.get('/getOneCategory', CategoryController.getOneCategory)

// 获取分类分页接口
router.get('/category', CategoryController.category)

// 添加分类接口
router.post('/addCategory', CategoryController.addCategory)

// 编辑分类判断分类名是否重名接口
router.get('/checkUpdCategoryName', CategoryController.CheckUpdCategoryName)

// 编辑分类接口
router.put('/updCategory', CategoryController.updCategory)

// 所有所有分类
router.get('/getAllCategory', CategoryController.getAllCategory)

// 删除单个分类接口
router.delete('/category', CategoryController.delCategory)

// 删除单个多类接口
router.delete('/delManyCategory', CategoryController.delManyCategory)

// 此路由错误中间件处理
router.use((err, req, res, next) => {
  console.log('err=>', err)
  res.json({ code: '00200', msg: err.message, data: {} })
})

// 导出
module.exports = router
